home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software Vault: The Diamond Collection
/
The Diamond Collection (Software Vault)(Digital Impact).ISO
/
cdr29
/
swmst091.zip
/
README.TXT
< prev
next >
Wrap
Text File
|
1995-02-21
|
9KB
|
224 lines
NOTE: This is beta software. Please don't run this program on
machines that would get you in a lot of hot water if something goes
wrong. Please see the file TODO before filing a bug report and see if
it isn't something that I'm already working on.
Introduction
------------
Thank you for trying SwitchMaster.
SwitchMaster is a small utility that allows the user to control which
tasks should/shouldn't be seen in the OS/2 Window List (CTRL+ESC),
Jump Sequence (ALT+ESC), or both.
In this release, the options are limited to those tasks that usually
cause the most annoyances when switching tasks under OS/2:
o The LaunchPad (OS/2 Warp only)
o The OS/2 Desktop
o Folders opened up under the Desktop
o The Minimized Window Viewer
o The SwitchMaster Window
Later releases will allow user-defined windows to be controlled.
Background
----------
I wrote SwitchMaster because I don't like having open folders included
in the OS/2 Window List. Trying not to re-invent the wheel, I
evaluated some of the other 'Window List control' type utilities but
none of them did exactly what I wanted them to do. It seemed like the
perfect reason to put all the money I've spent on OS/2 programming
books to good use. Now you get to enjoy the fruits of my labor. As
this is my first 'real' OS/2 program, I'd appreciate as much feedback
as possible.
Aside from SwitchMaster being the first OS/2 PM program I've ever
written, this is also the first utility I've felt is useful enough to
release publicly for others to evaluate. Taking that into account,
please try to keep the flames to a minimum if/when you find a bug.
The idea is to encourage me to keep on releasing new utilities for
OS/2. :)
Requirements
------------
SwitchMaster was written using the emx development system version 0.9a
with the second series of fixes (emxfix02.zip). To run SwitchMaster
you will need to have installed that level or greater of the emx
runtime libraries. The required DLL's are not included here. You can
find the required DLL's at
ftp://ftp-os2.nmsu.edu/os2/32bit/unix/emx09a/emxrt.zip
- SwitchMaster will only run on OS/2 2.0 and later.
E-Mailware!
-----------
SwitchMaster is E-Mailware. What that means is that you can do
whatever you want with the program as long as you send me some E-Mail
telling me how you liked it (or didn't like it). My E-Mail address is
listed at the end of this document. Other than that, SwitchMaster is
100% free of charge. With that price, you also get something
else...NO WARRANTY.
Disclaimer (the non-legalese form): If there are bugs in SwitchMaster
that totally destroy your computer (which I highly doubt there are),
don't blame me. If you use this program, you are doing so at your own
risk.
Bug reporting
-------------
If you do find a bug in SwitchMaster (which I'm sure there are some),
please let me know. As this is supposed to be a learning experience
for me, I want to find out what I did wrong so I don't do it again.
My E-Mail address is listed at the end of this document.
Usage
-----
SwitchMaster is pretty easy to use. Just create a program object that
points to whatever directory you put SwitchMaster in and fire it up.
NOTE: SwitchMaster expects to see its initialization file in the
same directory that it was started from. With that in mind, you may
want to specify the SwitchMaster directory in the field marked
'Working Directory' in the program object settings.
Once SwitchMaster is up and running, you should be greeted with the
SwitchMaster main window.
The radio buttons grouped under the heading 'Remove From' denote where
you want the task to be removed from. There you will find three
options:
o Window List
o Jump Sequence
o Both
Selecting 'Window List' removes the tasks from the Window List only
(i.e. what shows up when you hit CTRL+ESC). This way you can still
jump to the task via ALT+ESC, but you can't see it in the Window List.
Selecting 'Jump Sequence' removes the tasks from the ALT+ESC Jump
Sequence only. This way you can still see the task in the Window
List, but you can't switch to it using the ALT+ESC keystroke.
Selecting 'Both' removes the tasks from both the Window List and the
Jump Sequence so the tasks are completely invisible to OS/2's
switching mechanism.
The check boxes grouped under the heading 'Remove' define what tasks
should be removed. There you will find four options:
o LaunchPad
o Desktop
o Folders
o Minimized Window Viewer
o SwitchMaster
Selecting 'LaunchPad' will remove OS/2 Warp's Launch Pad. If you are
running an earlier version of OS/2, then selecting this option won't
do anything.
Selecting 'Desktop' will remove the Desktop.
Selecting 'Folders' will activate the 'folders kludge' (see section
titled _Technical Stuff_)and try to remove any open folders. Please
let me know how this works on your machine.
Selecting 'Minimized Window Viewer' removes the Minimized Window
Viewer.
Selecting 'SwitchMaster' removes the SwitchMaster window. By default,
SwitchMaster is set to only be viewable in the Window List (i.e. it
will be bypassed when using ALT+ESC to switch between windows). This
option allows you to redfine if SwitchMaster will be included in the
Window List.
NOTE: SwitchMaster performs it's magic by looking at a window's title.
If, for instance, you renamed your 'Minimized Window Viewer' to 'Min
Window Viewer', SwitchMaster will not see it. Perhaps I'll add the
functionality to define window titles in a later release.
Taking up the good portion of the lower half of the window is a
listbox titled 'Removed Tasks'. This window will show you what tasks
are currently being removed. This window will change when tasks are
opened and closed.
to the right of the listbox is a checkbox labeled 'Start Minimized'. If
you check this box and save the settings (see below), the next time
SwitchMaster is started, it will be started in the minimized state.
Below the 'Start Minimized' checkbox is a spin button labeled 'Timer'.
'Timer' defines how often SwitchMaster should look at the Window List
and take out the offending tasks. This number can be anywhere from 1
to 10 seconds.
The 'File' menu has one option: 'Save Settings'. Select this when
you've got all the options set up the way you want. That way the next
time you run SwitchMaster, it will default to those options.
The 'Help' menu has one option: 'About SwitchMaster'. That is pretty
self-explanatory.
That's it for what it takes to run SwitchMaster.
Technical stuff
---------------
As mentioned before, in my evaluation of the other utilities that do
the same sort of thing that SwitchMaster does, I noticed one sorely
lacking feature, that being removing open folders from the Window
list. After reading up on how OS/2 stores entries in the Window List,
I discovered that there is a reason why this feature hasn't popped up
yet anywhere else...OS/2 doesn't differentiate open folders from other
PM programs! This makes is difficult to block only the folders
without also turning off other PM programs that are running.
The solution: After spending quite a few hours in the debugger trying
to figure out how to make the 'best guess' at telling the difference
between PM apps and folders, I discovered that all open folders had
the same session ID as the Desktop. Bingo! The only problem is that
there are other applications that also share the Desktop session ID.
Most notably:
o The Desktop itself
o The Minimized Window Viewer (also a folder)
o The LaunchPad (OS/2 Warp only)
o The Workplace Shell
The solution then, was to 'scan' for the Desktop ID and remove
everything with that same ID, except those tasks outlined above. Yes,
it's a kludge, but it's the best solution I've found so far. If you
can think of any other way, I'm all ears.
The drawback is obvious, if there are other tasks that share the same
session ID as the Desktop that I didn't define above, they also get
taken out of the Window List. I'll try my best to figure out what
those may be and 'scan' for those entries too. I don't think, however,
there are that many more that need to be worried about.
Author Info
-----------
To reach me and tell me what you think (and/or report a bug), send
your E-Mail off to:
Wes Santee
wsantee@cyberspace.com
Enjoy!